#pragma once

typedef enum
{
    STATUS_OK = 0,
    PORT_ALREADY_OPEN_ERROR,
    UNABLE_TO_OPEN_PORT_ERROR,
    SET_PORT_ERROR,
    BOARD_WRITE_ERROR,
    INCOMMING_MSG_ERROR,
    INITIAL_MSG_ERROR,
    BOARD_NOT_READY_ERROR,
    STREAM_ALREADY_RUN_ERROR,
    INVALID_BUFFER_SIZE_ERROR,
    STREAM_THREAD_ERROR,
    STREAM_THREAD_IS_NOT_RUNNING,
    EMPTY_BUFFER_ERROR,
    INVALID_ARGUMENTS_ERROR,
    UNSUPPORTED_BOARD_ERROR,
    BOARD_NOT_CREATED_ERROR,
    ANOTHER_BOARD_IS_CREATED_ERROR,
    GENERAL_ERROR,
    SYNC_TIMEOUT_ERROR,
    JSON_NOT_FOUND_ERROR,
    NO_SUCH_DATA_IN_JSON_ERROR
} CustomExitCodes;

typedef enum
{
    STREAMING_BOARD = -2,
    SYNTHETIC_BOARD = -1,
    CYTON_BOARD = 0,
    GANGLION_BOARD = 1,
    CYTON_DAISY_BOARD = 2,
    NOVAXR_BOARD = 3,
    GANGLION_WIFI_BOARD = 4,
    CYTON_WIFI_BOARD = 5,
    CYTON_DAISY_WIFI_BOARD = 6
} BoardIds;
